emacs.git
9 months agoFix compilation-mode matches for csharp-mode (bug#78128)
Jostein Kjønigsen [Fri, 25 Apr 2025 13:29:31 +0000 (15:29 +0200)]
Fix compilation-mode matches for csharp-mode (bug#78128)

* lisp/progmodes/csharp-mode.el:
(csharp-compilation-re-dotnet-error):
(csharp-compilation-re-dotnet-warning): Ignore leading whitespace.

9 months ago; Fix last change (do not merge to master).
Eli Zaretskii [Wed, 30 Apr 2025 13:16:30 +0000 (16:16 +0300)]
; Fix last change (do not merge to master).

9 months agoAdd 3 scripts to fontset setup
Eli Zaretskii [Wed, 30 Apr 2025 13:13:53 +0000 (16:13 +0300)]
Add 3 scripts to fontset setup

* lisp/international/fontset.el (setup-default-fontset)
(script-representative-chars): Add support for Avestan, Old Turkic
and Chakma.  Patch by Werner Lemberg <wl@gnu.org>.  Do not merge
to master.

9 months ago; * doc/misc/efaq-w32.texi (Location of init file): Fix a typo.
Eli Zaretskii [Wed, 30 Apr 2025 11:10:25 +0000 (14:10 +0300)]
; * doc/misc/efaq-w32.texi (Location of init file): Fix a typo.

9 months agoFix compilation errors in emacsclient.c with MinGW GCC 15
Eli Zaretskii [Wed, 30 Apr 2025 11:06:44 +0000 (14:06 +0300)]
Fix compilation errors in emacsclient.c with MinGW GCC 15

* lib-src/emacsclient.c (set_fg, get_wc): Declare using actual
function signatures.
(w32_give_focus): Cast return value of 'GetProcAddress' to correct
pointer types.  (Bug#78160)

9 months ago; * etc/DEBUG: Add link to GCC bug #78685.
Sean Whitton [Wed, 30 Apr 2025 09:12:50 +0000 (17:12 +0800)]
; * etc/DEBUG: Add link to GCC bug #78685.

9 months ago; Fix key notation in Introduction to Emacs Lisp
Eli Zaretskii [Wed, 30 Apr 2025 06:03:17 +0000 (09:03 +0300)]
; Fix key notation in Introduction to Emacs Lisp

* doc/lispintro/emacs-lisp-intro.texi (Typing Lists)
(Note for Novices): Fix notation of 'M-C-\'.  (Bug#78153)

9 months ago; * lisp/files.el (revert-buffer-restore-functions): Doc fix (bug#78124).
Eli Zaretskii [Tue, 29 Apr 2025 18:28:01 +0000 (21:28 +0300)]
; * lisp/files.el (revert-buffer-restore-functions): Doc fix (bug#78124).

9 months ago; Improve documentation of 'format-time-string'
Eli Zaretskii [Tue, 29 Apr 2025 08:19:19 +0000 (11:19 +0300)]
; Improve documentation of 'format-time-string'

* doc/lispref/os.texi (Time Parsing): Fix documentation of week
numbers for %U, %V and %W.  (Bug#78096)

9 months ago; * lisp/textmodes/text-mode.el (text-mode-variant): Fix last change.
Eli Zaretskii [Tue, 29 Apr 2025 07:47:35 +0000 (10:47 +0300)]
; * lisp/textmodes/text-mode.el (text-mode-variant): Fix last change.

9 months ago; Improve obsolescence of 'text-mode-variant'
Eli Zaretskii [Tue, 29 Apr 2025 07:09:54 +0000 (10:09 +0300)]
; Improve obsolescence of 'text-mode-variant'

* lisp/textmodes/text-mode.el (text-mode-variant): Improve
obsolescence announcement text.

* doc/lispref/modes.texi (Example Major Modes): Update example.
(Bug#78125).

9 months ago; * lisp/files.el (revert-buffer-restore-functions): Doc fix.
Eli Zaretskii [Tue, 29 Apr 2025 06:39:34 +0000 (09:39 +0300)]
; * lisp/files.el (revert-buffer-restore-functions): Doc fix.

9 months ago; Mention early-init file in Emacs FAQ for Windows
Eli Zaretskii [Tue, 29 Apr 2025 06:05:28 +0000 (09:05 +0300)]
; Mention early-init file in Emacs FAQ for Windows

* doc/misc/efaq-w32.texi (Location of init file, Init file):
Mention the early-init file.  Suggested by David Hedlund
<davidh@gnu.org>.

9 months ago; Isearch: Fix key bindings in docstrings
Jake Forster [Mon, 28 Apr 2025 12:52:18 +0000 (22:22 +0930)]
; Isearch: Fix key bindings in docstrings

* lisp/isearch.el (isearch-allow-motion)
(isearch-motion-changes-direction): Use isearch-mode-map for
commands in docstrings (bug#78118).

Copyright-paperwork-exempt: yes

9 months agoFix the Android build
Po Lu [Sun, 27 Apr 2025 13:08:48 +0000 (21:08 +0800)]
Fix the Android build

* java/README.res: Move from java/res/README, as the AAPT does
not permit non-resource files in resource directories.

9 months agoAvoid infinite recursion under 'rectangle-mark-mode'
Eli Zaretskii [Sun, 27 Apr 2025 07:08:38 +0000 (10:08 +0300)]
Avoid infinite recursion under 'rectangle-mark-mode'

* lisp/rect.el (rectangle--region-beginning)
(rectangle--region-end): Avoid infinite recursion.  Patch by Alcor
<alcor@tilde.club>.  Do not merge to master.  (Bug#77973)

9 months ago; * doc/misc/ert.texi (Introduction): Be more Lisp-specific.
Sean Whitton [Sun, 27 Apr 2025 03:59:17 +0000 (11:59 +0800)]
; * doc/misc/ert.texi (Introduction): Be more Lisp-specific.

9 months agoInclude additional version metadata during Windows install
Sean Bright [Wed, 2 Apr 2025 17:52:06 +0000 (13:52 -0400)]
Include additional version metadata during Windows install

* admin/nt/dist-build/emacs.nsi: Add DisplayIcon, DisplayVersion, and
  Publisher values to the Uninstall registry key.

Copyright-paperwork-exempt: yes

9 months ago* doc/emacs/files.texi (Time Stamp Customization): Typo.
Stephen Gildea [Sat, 26 Apr 2025 01:37:39 +0000 (18:37 -0700)]
* doc/emacs/files.texi (Time Stamp Customization): Typo.

9 months ago; * doc/emacs/search.texi (Isearch Yank): Improve flow.
Sean Whitton [Thu, 24 Apr 2025 12:38:51 +0000 (20:38 +0800)]
; * doc/emacs/search.texi (Isearch Yank): Improve flow.

9 months ago; * etc/DEBUG: Say that debugging code compiled w/ -Og can be hard.
Sean Whitton [Thu, 24 Apr 2025 12:14:36 +0000 (20:14 +0800)]
; * etc/DEBUG: Say that debugging code compiled w/ -Og can be hard.

9 months ago; Improve documentation of 'modifier-bar-mode'
Eli Zaretskii [Thu, 24 Apr 2025 09:32:02 +0000 (12:32 +0300)]
; Improve documentation of 'modifier-bar-mode'

* doc/emacs/custom.texi (Modifier Keys):
* doc/emacs/frames.texi (Tool Bars):
* lisp/tool-bar.el (modifier-bar-mode): Improve documentation of
'modifier-bar-mode'.

9 months ago; * doc/emacs/programs.texi (Matching): Fix wording (bug#78021).
Eli Zaretskii [Thu, 24 Apr 2025 09:07:56 +0000 (12:07 +0300)]
; * doc/emacs/programs.texi (Matching): Fix wording (bug#78021).

9 months ago; * doc/misc/efaq-w32.texi (MinGW-w64): Fix punctuation (bug#78005).
Eli Zaretskii [Wed, 23 Apr 2025 13:18:26 +0000 (16:18 +0300)]
; * doc/misc/efaq-w32.texi (MinGW-w64): Fix punctuation (bug#78005).

10 months ago; * java/res/README: Note origin of emacs_wrench.png.
Sean Whitton [Sun, 20 Apr 2025 01:22:06 +0000 (09:22 +0800)]
; * java/res/README: Note origin of emacs_wrench.png.

10 months agoBackport: fix flymake margin indicator fallback logic
Spencer Baugh [Thu, 17 Apr 2025 20:22:08 +0000 (16:22 -0400)]
Backport: fix flymake margin indicator fallback logic

Backport 861e7f8b60e4bf076bf5991d25a22b3a012746bd to fix bug#77313, so
that fringe indicators are once again reliably the default on frames
that support them.

Do not merge to master.

* lisp/progmodes/flymake.el (flymake-indicator-type)
(flymake-mode): Fix margin fallback behavior.

10 months ago* lisp/progmodes/heex-ts-mode.el (heex-ts): Fix :group name.
Michael Albinus [Sat, 19 Apr 2025 07:41:58 +0000 (09:41 +0200)]
* lisp/progmodes/heex-ts-mode.el (heex-ts): Fix :group name.

10 months agoFix typescript-ts-mode indentation (bug#77803)
Konstantin Kharlamov [Tue, 15 Apr 2025 14:34:11 +0000 (17:34 +0300)]
Fix typescript-ts-mode indentation (bug#77803)

Don't align variable names to their declaratory expression.

Before this commit in code like:

    const a = 1,
          b = 2;

the b would get indented to `const'.  Similarly for `var' and
`let'. The expected behavior instead is getting indented to
`typescript-ts-mode-indent-offset'.

* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Indent identifiers declarations to
`typescript-ts-mode-indent-offset'.
* test/lisp/progmodes/typescript-ts-mode-resources/indent.erts
(Lexical and variable declarations): Update test accordingly.

10 months agoHandle offset in treesit--update-ranges-local (bug#77848)
Yuan Fu [Fri, 18 Apr 2025 23:22:45 +0000 (16:22 -0700)]
Handle offset in treesit--update-ranges-local (bug#77848)

* lisp/treesit.el:
(treesit--update-ranges-local): Add OFFSET parameter.
(treesit-update-ranges): Pass offset to
treesit--update-ranges-local.

10 months agoDisable echo back instead of setting tty to raw in Inferior Python
kobarity [Thu, 20 Mar 2025 10:03:33 +0000 (19:03 +0900)]
Disable echo back instead of setting tty to raw in Inferior Python

* lisp/progmodes/python.el (python-shell-setup-code): Change the
Python setup code.  (Bug#76943)

(cherry picked from commit 4c5c20ddc2cdde570ccf54c4aa60644828ee213d)

10 months ago; Improve doc string of 'insert-char'
Eli Zaretskii [Fri, 18 Apr 2025 11:10:19 +0000 (14:10 +0300)]
; Improve doc string of 'insert-char'

* src/editfns.c (Finsert_char): Doc fix.  Suggested by Lactose ‎
<lactose@allthingslinux.org> (bug#77889).

10 months ago* admin/notes/emba: Fix docker build instruction.
Michael Albinus [Fri, 18 Apr 2025 07:31:54 +0000 (09:31 +0200)]
* admin/notes/emba: Fix docker build instruction.

10 months ago* doc/lispref/text.texi (Margins): Grammar fix.
Sean Whitton [Fri, 18 Apr 2025 06:31:50 +0000 (14:31 +0800)]
* doc/lispref/text.texi (Margins): Grammar fix.

Author:

10 months agoMerge branch 'emacs-30' of git.savannah.gnu.org:/srv/git/emacs into emacs-30
Eli Zaretskii [Fri, 18 Apr 2025 05:03:48 +0000 (08:03 +0300)]
Merge branch 'emacs-30' of git.savannah.gnu.org:/srv/git/emacs into emacs-30

10 months ago; Improve documentation of 'help-fns-edit-variable'
Eli Zaretskii [Wed, 16 Apr 2025 08:13:41 +0000 (11:13 +0300)]
; Improve documentation of 'help-fns-edit-variable'

* lisp/help-fns.el (help-fns-edit-variable)
(help-enable-variable-value-editing): Doc fixes.

(cherry picked from commit bf737dc42a70fd8665b7c5ad506249a6119ec4c4)

10 months agoBackport: Fix tree-sitter tests on Emba
Michael Albinus [Tue, 15 Apr 2025 12:17:25 +0000 (14:17 +0200)]
Backport: Fix tree-sitter tests on Emba

* test/infra/Dockerfile.emba: Use tree-sitter-rust v0.23.3 in
order to match ABI version of libtree-sitter0.

(cherry picked from commit 788c9cfb62c7fd50b171a9209dd7453bd03f14bf)

10 months ago; Improve documentation of some functions in files-x.el
Eli Zaretskii [Tue, 15 Apr 2025 13:58:50 +0000 (16:58 +0300)]
; Improve documentation of some functions in files-x.el

* lisp/files-x.el (modify-file-local-variable)
(modify-file-local-variable-prop-line)
(add-file-local-variable-prop-line)
(delete-file-local-variable-prop-line, add-file-local-variable)
(delete-file-local-variable): Document the effect of INTERACTIVE
argument.

10 months agoFix deleting the first line of calc trail
Wojciech Siewierski [Mon, 14 Apr 2025 16:57:28 +0000 (18:57 +0200)]
Fix deleting the first line of calc trail

* lisp/calc/calc-trail.el (calc-trail-kill): Remove the check
preventing the removal of the first trail line, which is no
longer relevant since commit 8e1376a3912.  (Bug#77816)

10 months agoFix file descriptor leaks on arm Android
Po Lu [Sun, 13 Apr 2025 11:02:00 +0000 (19:02 +0800)]
Fix file descriptor leaks on arm Android

* exec/loader-aarch64.s (_start):

* exec/loader-armeabi.s (_start): Fix thinko.
Do not merge to master.

10 months ago; Fix a typo in proced.el
Eli Zaretskii [Sun, 13 Apr 2025 09:38:04 +0000 (12:38 +0300)]
; Fix a typo in proced.el

* lisp/proced.el (proced-filter): Fix a typo.  Reported by Armin
Darvish <armindarvish@gmail.com>.  (Bug#77713)

(cherry picked from commit 3a13fb2069fc861e20fca893aa64dd70dcef0de3)

10 months agolisp/help.el (help-form-show): Improve last change (bug#77118)
Stefan Monnier [Sat, 12 Apr 2025 15:11:38 +0000 (11:11 -0400)]
lisp/help.el (help-form-show): Improve last change (bug#77118)

Fill the buffer from within the `with-output-to-temp-buffer`, as before.

10 months agoFix display of keys in 'help-form' buffers (bug#77118)
Stephen Berman [Sat, 12 Apr 2025 10:01:50 +0000 (12:01 +0200)]
Fix display of keys in 'help-form' buffers (bug#77118)

* lisp/help.el (help-form-show): Use 'insert' instead of 'princ'
so that keys in 'help-form' are displayed with 'help-key-binding' face.

10 months agoImprove documentation of 'user-emacs-directory'
Eli Zaretskii [Sat, 12 Apr 2025 06:52:04 +0000 (09:52 +0300)]
Improve documentation of 'user-emacs-directory'

* doc/emacs/custom.texi (Find Init): Document the effect of
'user-emacs-directory' on native compilation.  Advise against
changing the value of 'user-emacs-directory' in init files.
(Bug#77745)

10 months agoUpdate remarks on name prefixes in coding conventions
Sean Whitton [Sat, 12 Apr 2025 03:05:45 +0000 (11:05 +0800)]
Update remarks on name prefixes in coding conventions

* doc/lispref/tips.texi (Coding Conventions): Say that it's okay
to put the name prefix later for defining constructs, rather
than explicitly instructing the reader to do so.  Condense the
recommendation to err on the side of prepending the name prefix.

10 months ago; * doc/emacs/files.texi (Image Mode): Fix a typo (bug#77723).
Eli Zaretskii [Fri, 11 Apr 2025 08:33:26 +0000 (11:33 +0300)]
; * doc/emacs/files.texi (Image Mode): Fix a typo (bug#77723).

10 months ago; Fix doc strings of a few Dired commands
Eli Zaretskii [Wed, 9 Apr 2025 11:25:29 +0000 (14:25 +0300)]
; Fix doc strings of a few Dired commands

* lisp/dired-aux.el (dired-do-chown, dired-do-touch)
(dired-do-chgrp, dired-do-chmod): Doc fix.  (Bug#77650)

10 months ago; * CONTRIBUTE: Clarify single-line commit should end with a period.
Jeremy Bryant [Mon, 7 Apr 2025 20:47:39 +0000 (21:47 +0100)]
; * CONTRIBUTE: Clarify single-line commit should end with a period.

10 months ago; * admin/MAINTAINERS: Complete the handover of VC
Sean Whitton [Sun, 6 Apr 2025 11:03:23 +0000 (19:03 +0800)]
; * admin/MAINTAINERS: Complete the handover of VC

Changed agreed with Dmitry Gutov <dmitry@gutov.dev>.

10 months ago; Fix typo in Tramp
Michael Albinus [Sun, 6 Apr 2025 07:11:06 +0000 (09:11 +0200)]
; Fix typo in Tramp

* lisp/net/tramp-cache.el (with-tramp-saved-connection-property):
Fix typo.

10 months ago; Fix a recent backport
Eli Zaretskii [Sat, 5 Apr 2025 12:09:20 +0000 (15:09 +0300)]
; Fix a recent backport

* lisp/progmodes/typescript-ts-mode.el
(treesit-node-child-by-field-name, treesit-node-match-p)
(treesit-node-type): Declare.  Do not merge to master.

10 months agoFix Tramp problem with loooongish file names
Michael Albinus [Fri, 4 Apr 2025 12:29:00 +0000 (14:29 +0200)]
Fix Tramp problem with loooongish file names

* lisp/net/tramp-sh.el (tramp-readlink-file-truename): New defconst.
(tramp-bundle-read-file-names): Use new %m and %q format specifiers.
(tramp-sh-handle-file-truename): Use `tramp-readlink-file-truename'.
(tramp-bundle-read-file-names, tramp-get-remote-readlink): Simplify.
(tramp-expand-script): Add format specifiers %m and %q for test
commands.  Addapt readlink call.
Reported by Stacey Marshall <stacey.marshall@gmail.com>.

10 months agoTighten the criteria for a defun in typescript-ts-mode (bug#77369)
Yuan Fu [Sun, 30 Mar 2025 04:15:02 +0000 (21:15 -0700)]
Tighten the criteria for a defun in typescript-ts-mode (bug#77369)

* lisp/progmodes/typescript-ts-mode.el:
(typescript-ts-mode--defun-type-regexp): New
variable (backported from master).
(typescript-ts-mode--defun-predicate): New function.
(typescript-ts-base-mode): Use new predicate.

10 months agoFix obsolete documentation of desktop library
Stephen Berman [Thu, 3 Apr 2025 14:53:35 +0000 (16:53 +0200)]
Fix obsolete documentation of desktop library

* doc/emacs/misc.texi (Saving Emacs Sessions): Replace
documentation of the long-deleted user option
'desktop-clear-preserve-buffers-regexp' with documentation of
'desktop-clear-preserve-buffers'.

10 months agoImprove Tramp's initial warnings
Michael Albinus [Thu, 3 Apr 2025 12:57:06 +0000 (14:57 +0200)]
Improve Tramp's initial warnings

* lisp/net/tramp-cache.el (tramp-dump-connection-properties):
Adapt comment.

* lisp/net/tramp-compat.el (tramp-warning): Declare and use it.

* lisp/net/tramp-message.el (tramp-warning): Declare `indent'.

10 months agoExplain, how to suppress Tramp warnings
Michael Albinus [Wed, 2 Apr 2025 16:37:22 +0000 (18:37 +0200)]
Explain, how to suppress Tramp warnings

* doc/misc/tramp.texi (Frequently Asked Questions): Remove double item.
(Traces and Profiles): Mention `warning-suppress-types'.  (Bug#77422)

10 months agoprinted manuals: xrefs in and out of "Preparing Patches"
Stephen Gildea [Tue, 1 Apr 2025 05:34:20 +0000 (22:34 -0700)]
printed manuals: xrefs in and out of "Preparing Patches"

Fix two cases of links where the on-line manual is one document but the
manual is split into separate documents for printing:

* doc/emacs/package.texi (Fetching Package Sources): fix printed link to
"Preparing Patches" to point to separate document.
* doc/emacs/vc1-xtra.texi (Preparing Patches): fix printed link to
"Directory Variables" to point to separate document.

10 months agoFix Tramp's file-attributes cache
Michael Albinus [Tue, 1 Apr 2025 13:24:44 +0000 (15:24 +0200)]
Fix Tramp's file-attributes cache

* lisp/net/tramp-adb.el (tramp-adb-handle-file-executable-p):
Check also for sticky bit.
(tramp-adb-handle-file-readable-p): Simplify.

* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-executable-p):
Check also for sticky bit.  Force `file-attributes' check.

* lisp/net/tramp-sh.el (tramp-sh-handle-file-executable-p):
Check also for sticky bit.
(tramp-sh-handle-file-readable-p)
(tramp-sh-handle-file-writable-p): Simplify.

* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-executable-p):
Check also for sticky bit.
(tramp-sudoedit-handle-file-readable-p)
(tramp-sudoedit-handle-file-writable-p): Simplify.

* lisp/net/tramp.el (tramp-use-file-attributes): Fix docstring.
(tramp-handle-file-readable-p, tramp-handle-file-writable-p):
Force `file-attributes' check.  Use `file-truename' for symbolic links.
(tramp-check-cached-permissions): New optional argument FORCE.
Fix symlink check.  Check also for sticky bit.  (Bug#77402)

* test/lisp/net/tramp-tests.el
(tramp-test20-file-modes-without-file-attributes)
(tramp-test21-file-links-without-file-attributes): New tests.

10 months agoFix compilation errors due to insufficient compiler safety (bug#63288)
Pip Cet [Mon, 17 Feb 2025 15:21:16 +0000 (15:21 +0000)]
Fix compilation errors due to insufficient compiler safety (bug#63288)

The default safety level is 1.  Restoring the default safety level to
1 after it was temporarily 0 should reset byte-compile-delete-errors
to nil, its default level.  Failing to do that resulted in
miscompilation of code in highly-parallel builds.

* lisp/emacs-lisp/cl-macs.el (cl--do-proclaim): Change
'byte-compile-delete-errors' to become t only at 'safety' level 0, not
levels 1 or 2.

(cherry picked from commit 53a5dada413662389a17c551a00d215e51f5049f)

10 months agoBackport expansion of Time Stamp documentation
Stephen Gildea [Sun, 30 Mar 2025 18:39:53 +0000 (11:39 -0700)]
Backport expansion of Time Stamp documentation

* doc/emacs/files.texi (Time Stamps): Add examples of enabling
time stamping with add-hook, setting time-stamp-pattern as a
file-local variable, and showing a time stamp at the end of a
file.  Divide into three sections.
* doc/emacs/emacs.texi: Add new nodes to menu.
* lisp/info.el (Info-file-list-for-emacs): Remove entry that
points Info at time-stamp discussion in the Autotype document.
* lisp/time-stamp.el (time-stamp-format, time-stamp-active,
time-stamp-count, time-stamp-pattern, time-stamp, time-stamp-string):
Expand doc strings.  Include Info cross-references.

Cherry picked from commits on the main branch.
Do not merge to master.

10 months ago; Improve the documentation of 'slice' display spec (bug#77384).
Eli Zaretskii [Sun, 30 Mar 2025 16:27:22 +0000 (19:27 +0300)]
; Improve the documentation of 'slice' display spec (bug#77384).

10 months ago; * src/editfns.c (Fmessage): Mention 'inhibit-message' (bug#77257).
Eli Zaretskii [Sun, 30 Mar 2025 14:38:25 +0000 (17:38 +0300)]
; * src/editfns.c (Fmessage): Mention 'inhibit-message' (bug#77257).

10 months agoSync with Tramp 2.7.3-pre
Michael Albinus [Sun, 30 Mar 2025 13:53:47 +0000 (15:53 +0200)]
Sync with Tramp 2.7.3-pre

* doc/misc/tramp.texi: Use @dots{} where appropriate.
(External methods): Precise remark on rsync speed.
(Customizing Methods): Add incus-tramp.
(Password handling): Mention expiration of cached passwords when a
session timeout happens.
(Predefined connection information): Mention also "androidsu" as
special case of "tmpdir".
(Ad-hoc multi-hops, Frequently Asked Questions):
Improve description how ad-hoc multi-hop file names can be made
persistent.  (Bug#65039, Bug#76457)
(Remote processes): Signals are not delivered to remote direct
async processes.  Say, that there are restrictions for transfer of
binary data to remote direct async processes.
(Bug Reports): Explain bisecting.
(Frequently Asked Questions): Improve index.  Speak about
fingerprint readers.  Recommend `small-temporary-file-directory'
for ssh sockets.
(External packages): Rename subsection "Timers, process filters,
process sentinels, redisplay".
(Extension packages): New node.
(Top, Files directories and localnames): Add it to @menu.

* doc/misc/trampver.texi:
* lisp/net/trampver.el (tramp-version): Adapt Tramp versions.
(tramp-repository-branch, tramp-repository-version):
Remove ;;;###tramp-autoload cookie.

* lisp/net/tramp-adb.el:
* lisp/net/tramp-androidsu.el:
* lisp/net/tramp-cache.el:
* lisp/net/tramp-cmds.el:
* lisp/net/tramp-compat.el:
* lisp/net/tramp-container.el:
* lisp/net/tramp-crypt.el:
* lisp/net/tramp-ftp.el:
* lisp/net/tramp-fuse.el:
* lisp/net/tramp-gvfs.el:
* lisp/net/tramp-integration.el:
* lisp/net/tramp-message.el:
* lisp/net/tramp-rclone.el:
* lisp/net/tramp-sh.el:
* lisp/net/tramp-smb.el:
* lisp/net/tramp-sshfs.el:
* lisp/net/tramp-sudoedit.el:
* lisp/net/tramp.el: Use `when-let*', `if-let*' and `and-let*'
consequently.  (Bug#73441)

* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
Move setting of sentinel up.

* lisp/net/tramp-archive.el (tramp-archive-file-name-p):
Add ;;;###tramp-autoload cookie.
(tramp-archive-local-file-name): New defun.

* lisp/net/tramp-cache.el (tramp-connection-properties): Add link
to the Tramp manual in the docstring.
(tramp-get-connection-property, tramp-set-connection-property):
Don't raise a debug message for the `tramp-cache-version' key.
(with-tramp-saved-connection-property)
(with-tramp-saved-connection-properties): Add traces.
(tramp-dump-connection-properties): Don't save connection property
"pw-spec".

* lisp/net/tramp-cmds.el (tramp-repository-branch)
(tramp-repository-version): Declare.

* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
(tramp-gvfs-do-copy-or-rename-file): Don't use the truename.
Handle symlinks.
(tramp-gvfs-local-file-name): New defun.

* lisp/net/tramp-message.el (tramp-repository-branch)
(tramp-repository-version): Declare.
(tramp-error-with-buffer, tramp-user-error): Don't redisplay in
`sit-for'.  (Bug#73718)
(tramp-warning): Fix `lwarn' call.

* lisp/net/tramp.el (tramp-read-passwd):
* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-send-command):
Rename connection property "password-vector" to "pw-vector".

* lisp/net/tramp-sh.el (tramp-methods) <pscp, psftp>:
Adapt `tramp-copy-args' argument.
(tramp-get-remote-pipe-buf, tramp-actions-before-shell):
Use `tramp-fingerprint-prompt-regexp'.
(tramp-sh-handle-copy-directory):
Apply `tramp-do-copy-or-rename-file-directly' if possible.
(tramp-do-copy-or-rename-file): Refactor.  Handle symlinks.
(Bug#76678)
(tramp-plink-option-exists-p): New defun.
(tramp-ssh-or-plink-options): Rename from
`tramp-ssh-controlmaster-options'.  Adapt further plink options.
(tramp-do-copy-or-rename-file-out-of-band)
(tramp-maybe-open-connection): Adapt calls.
(tramp-sh-handle-make-process): Don't set connection property
"remote-pid", it's unused.
(tramp-sh-handle-process-file): Do proper quoting.
(tramp-vc-file-name-handler): Add `file-directory-p', which is
used in `vc-find-root'.  (Bug#74026)
(tramp-maybe-open-connection): Use connection property "hop-vector".
(tramp-get-remote-pipe-buf): Make it more robust.

* lisp/net/tramp-smb.el (tramp-smb-errors): Add string.
(tramp-smb-handle-copy-directory): Don't check existence of
DIRNAME, this is done in `tramp-skeleton-copy-directory' already.
(tramp-smb-handle-copy-file, tramp-smb-handle-rename-file): Refactor.

* lisp/net/tramp-sshfs.el (tramp-sshfs-handle-process-file):
STDERR is not implemented.

* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
Don't use the truename.  Handle symlinks.

* lisp/net/tramp.el (tramp-mode): Set to nil on MS-DOS.
(tramp-otp-password-prompt-regexp): Add TACC HPC prompt.
(tramp-wrong-passwd-regexp): Add fingerprint messages.
(tramp-fingerprint-prompt-regexp, tramp-use-fingerprint):
New defcustoms.
(tramp-string-empty-or-nil-p):
Declare `tramp-suppress-trace' property.
(tramp-barf-if-file-missing): Accept also symlinks.
(tramp-skeleton-file-exists-p)
(tramp-handle-file-directory-p): Protect against cyclic symlinks.
(tramp-skeleton-make-symbolic-link): Drop volume letter when flushing.
(tramp-skeleton-process-file): Raise a warning if STDERR is not
implemented.
(tramp-skeleton-set-file-modes-times-uid-gid): Fix typo.
(tramp-compute-multi-hops): Check for
`tramp-sh-file-name-handler-p', it works only for this.
(tramp-handle-shell-command):
Respect `async-shell-command-display-buffer'.
(tramp-action-password, tramp-process-actions): Use connection
property "hop-vector".
(tramp-action-fingerprint, tramp-action-show-message): New defuns.
(tramp-action-show-and-confirm-message): Start check at (point-min).
(tramp-wait-for-regexp): Don't redisplay in `sit-for'.  (Bug#73718)
(tramp-convert-file-attributes): Don't cache
"file-attributes-ID-FORMAT".
(tramp-read-passwd, tramp-clear-passwd): Rewrite.  (Bug#74105)

* test/lisp/net/tramp-tests.el (auth-source-cache-expiry)
(ert-batch-backtrace-right-margin): Set them to nil.
(vc-handled-backends): Suppress if noninteractive.
(tramp--test-enabled): Cleanup also
`tramp-compat-temporary-file-directory'.
(tramp-test11-copy-file, tramp-test12-rename-file)
(tramp-test18-file-attributes, tramp--test-deftest-with-stat)
(tramp--test-deftest-with-perl, tramp--test-deftest-with-ls)
(tramp--test-deftest-without-file-attributes)
(tramp-test21-file-links, tramp-test28-process-file)
(tramp-test32-shell-command, tramp-test36-vc-registered)
(tramp-test39-make-lock-file-name, tramp--test-check-files)
(tramp-test42-utf8, tramp-test43-file-system-info)
(tramp-test44-file-user-group-ids, tramp-test47-read-password):
Adapt tests.
(tramp-test47-read-fingerprint): New test.

10 months agolisp/emacs-lisp/cl-macs.el (cl-labels): Fix docstring (bug#77348)
Stefan Monnier [Sun, 30 Mar 2025 04:44:50 +0000 (00:44 -0400)]
lisp/emacs-lisp/cl-macs.el (cl-labels): Fix docstring (bug#77348)

10 months agoFix minor issues in documentation of `use-package'
Dominik Schrempf [Thu, 27 Mar 2025 14:54:52 +0000 (15:54 +0100)]
Fix minor issues in documentation of `use-package'

(Bug#77311)

Copyright-paperwork-exempt: yes

10 months agoPHP should be in the PATH, either locally or remotely. (bug#76242).
Vincenzo Pupillo [Fri, 14 Mar 2025 20:11:22 +0000 (21:11 +0100)]
PHP should be in the PATH, either locally or remotely. (bug#76242).

* lisp/progmodes/php-ts-mode.el
(php-ts-mode-php-default-executable): Renamed from
'php-ts-mode-php-executable'.
(php-ts-mode--executable): New function that returns the absolute
filename of the PHP executable, local or remote, based on
'default-directory'.
(php-ts-mode--anchor-prev-sibling): Replaced 'when-let' with
“when-let*.”
(php-ts-mode--indent-defun): Replaced 'when-let' with
'when-let*'.
(php-ts-mode-run-php-webserver): Use the new function
(php-ts-mode-php-default-executable).
(run-php): Use the new function (php-ts-mode-php-default-executable).

10 months agoAvoid warning when loading 'go-ts-mode'
Eli Zaretskii [Sat, 29 Mar 2025 10:36:02 +0000 (13:36 +0300)]
Avoid warning when loading 'go-ts-mode'

* lisp/progmodes/go-ts-mode.el (treesit-ready-p): Silence the
warning if the gomod language library is not installed.
(Bug#77213)

10 months ago; Fix package-version values
Eli Zaretskii [Thu, 27 Mar 2025 11:52:22 +0000 (13:52 +0200)]
; Fix package-version values

* lisp/textmodes/rst.el (rst-compile-toolsets):
* lisp/which-key.el (which-key-idle-delay): Fix package-version.

10 months ago; * lisp/which-key.el (which-key-idle-delay): Fix package-version.
Eli Zaretskii [Thu, 27 Mar 2025 11:49:10 +0000 (13:49 +0200)]
; * lisp/which-key.el (which-key-idle-delay): Fix package-version.

10 months agopeg.texi: Fix bug#76555 even a bit more
Yue Yi [Wed, 26 Mar 2025 02:22:08 +0000 (22:22 -0400)]
peg.texi: Fix bug#76555 even a bit more

* doc/lispref/peg.texi (Parsing Expression Grammars):
Fix other part of the grammar of `define-peg-ruleset` example.

10 months agopeg.texi: Fix bug#76555 even a bit more
Yue Yi [Wed, 26 Mar 2025 02:20:50 +0000 (22:20 -0400)]
peg.texi: Fix bug#76555 even a bit more

* doc/lispref/peg.texi (Parsing Expression Grammars):
Fix grammar of `define-peg-ruleset` example.

10 months agoPEG: Fix bug#76555
Stefan Monnier [Wed, 26 Mar 2025 02:17:05 +0000 (22:17 -0400)]
PEG: Fix bug#76555

* doc/lispref/peg.texi (Parsing Expression Grammars):
Fix `define-peg-ruleset` example.

* lisp/progmodes/peg.el (define-peg-rule): Fix indent rule.

10 months ago; Minor update in ack.texi
Stefan Kangas [Wed, 26 Mar 2025 00:03:06 +0000 (01:03 +0100)]
; Minor update in ack.texi

* doc/emacs/ack.texi (Acknowledgments): Mention eglot in entry for João
Távora.

10 months ago; Improve type specifier documentation
Stefan Kangas [Tue, 25 Mar 2025 22:16:11 +0000 (23:16 +0100)]
; Improve type specifier documentation

* doc/lispref/functions.texi (Declare Form): Clarify wording for
precision and consistency; note consequences of incorrect declarations.
* doc/lispref/objects.texi (Type Specifiers): Mention use by the native
compiler; tighten wording.

10 months ago; Improve documentation of "function types"
Eli Zaretskii [Tue, 25 Mar 2025 12:37:17 +0000 (14:37 +0200)]
; Improve documentation of "function types"

* doc/lispref/functions.texi (Declare Form):
* doc/lispref/objects.texi (Type Specifiers): Improve wording and
indexing.

10 months ago; * admin/notes/spelling: More precisely qualify saying just "Lisp"
Sean Whitton [Mon, 24 Mar 2025 02:40:09 +0000 (10:40 +0800)]
; * admin/notes/spelling: More precisely qualify saying just "Lisp"

10 months agoAdd a choice to 'dired-movement-style' to restore the previous behavior
Juri Linkov [Sun, 23 Mar 2025 17:48:28 +0000 (19:48 +0200)]
Add a choice to 'dired-movement-style' to restore the previous behavior

* lisp/dired.el (dired-movement-style): Add new values
'bounded-files' and 'cycle-files' (bug#76596).
(dired--move-to-next-line): Use new values for users
who prefer the default behavior of Emacs 30.1.

10 months ago; Fix some markup in doc/lispref/commands.texi.
Basil L. Contovounesios [Sun, 23 Mar 2025 17:13:52 +0000 (18:13 +0100)]
; Fix some markup in doc/lispref/commands.texi.

10 months agoImprove docstring of should-error
Stefan Kangas [Sun, 23 Mar 2025 16:40:22 +0000 (17:40 +0100)]
Improve docstring of should-error

* lisp/emacs-lisp/ert.el (should-error): Improve docstring.

10 months agoUse debian:bookworm for emba tests (don't merge)
Michael Albinus [Sun, 23 Mar 2025 08:33:57 +0000 (09:33 +0100)]
Use debian:bookworm for emba tests (don't merge)

There are problems with treesitter installation from debian:sid.

* test/infra/Dockerfile.emba (emacs-base): Use debian:bookworm.
(emacs-eglot, emacs-tree-sitter): Use emacs-base.
(emacs-native-comp): Install libgccjit-12-dev.

11 months ago* lisp/treesit.el (treesit-indent-region): Handle markers (bug#77077).
Juri Linkov [Sat, 22 Mar 2025 18:37:35 +0000 (20:37 +0200)]
* lisp/treesit.el (treesit-indent-region): Handle markers (bug#77077).

Ensure that markers are converted to integers for 'beg' and 'end'.

11 months ago; * admin/notes/spelling: Grammar fix
Sean Whitton [Sat, 22 Mar 2025 13:07:28 +0000 (21:07 +0800)]
; * admin/notes/spelling: Grammar fix

11 months ago; Add index entry "code completion" to user manual
Stefan Kangas [Sat, 22 Mar 2025 08:05:08 +0000 (09:05 +0100)]
; Add index entry "code completion" to user manual

* doc/emacs/programs.texi (Symbol Completion): Improve indexing by
adding "code completion".  This is the name that this feature goes by
elsewhere, so users are likely to look for it.

11 months ago; * doc/emacs/programs.texi (Program Modes): Add info about Eglot.
Eli Zaretskii [Sat, 22 Mar 2025 07:04:48 +0000 (09:04 +0200)]
; * doc/emacs/programs.texi (Program Modes): Add info about Eglot.

11 months ago; admin/notes/spelling: Notes on abbreviation of "Emacs Lisp"
Sean Whitton [Fri, 14 Mar 2025 07:54:13 +0000 (15:54 +0800)]
; admin/notes/spelling: Notes on abbreviation of "Emacs Lisp"

11 months agoFix OSX build without pdumper
Jindrich Makovicka [Wed, 19 Mar 2025 09:03:09 +0000 (10:03 +0100)]
Fix OSX build without pdumper

* Makefile.in (install-arch-dep) [ns_self_contained]: Add missing
DUMPING = pdumper check.

Copyright-paperwork-exempt: yes

11 months ago; Add indexing for Eglot in user manual
Eli Zaretskii [Thu, 20 Mar 2025 08:41:26 +0000 (10:41 +0200)]
; Add indexing for Eglot in user manual

* doc/emacs/programs.texi (Imenu, Programming Language Doc)
(Symbol Completion):
* doc/emacs/maintaining.texi (Xref): Index Eglot-related
functionalities.

11 months ago; Change some instances of cl to cl-lib in docs
Stefan Kangas [Thu, 20 Mar 2025 01:05:55 +0000 (02:05 +0100)]
; Change some instances of cl to cl-lib in docs

* doc/misc/cl.texi (Overview):
* doc/misc/eieio.texi (CLOS compatibility, Wish List): Change 'cl' to
'cl-lib' where appropriate.

11 months ago; Improve introduction to use-package manual
Stefan Kangas [Wed, 19 Mar 2025 20:27:29 +0000 (21:27 +0100)]
; Improve introduction to use-package manual

* doc/misc/use-package.texi (Top): Improve introduction.

11 months ago; Add cross-references to push and pop docstrings
Stefan Kangas [Wed, 19 Mar 2025 20:27:38 +0000 (21:27 +0100)]
; Add cross-references to push and pop docstrings

* lisp/subr.el (push, pop): Add cross-references to Info manual.

11 months agoFix clipboard object handle leak on Android 3.1 to 11.0
Po Lu [Sun, 16 Mar 2025 12:12:52 +0000 (20:12 +0800)]
Fix clipboard object handle leak on Android 3.1 to 11.0

* src/androidselect.c (extract_fd_offsets): Release retrieved
ParcelFileDescriptor objects on APIs 12 through 30.

11 months agoOnly disable 'completion-preview-active-mode' when it is on
Eshel Yaron [Sun, 16 Mar 2025 08:45:25 +0000 (09:45 +0100)]
Only disable 'completion-preview-active-mode' when it is on

* lisp/completion-preview.el
(completion-preview--post-command): Avoid calling
'completion-preview-active-mode' to disable the mode when
already off, since it forces a costly redisplay. (Bug#76964)

11 months agoBackport Transient commit f69e1286
Jonas Bernoulli [Sat, 15 Mar 2025 19:29:58 +0000 (20:29 +0100)]
Backport Transient commit f69e1286

2025-03-12 f69e128654627275e7483a735f670bd53501999d
transient-suffix-object: Handle duplicated command invoked using mouse

Fixes bug#76680.

11 months ago; Doc fix for legacy keymap functions
Stefan Kangas [Sat, 15 Mar 2025 18:36:51 +0000 (19:36 +0100)]
; Doc fix for legacy keymap functions

* doc/lispref/keymaps.texi (Low-Level Key Binding): Add new alternatives
for two more legacy functions.

11 months ago; * doc/misc/ede.texi (Top): Improve introduction.
Stefan Kangas [Fri, 14 Mar 2025 23:18:28 +0000 (00:18 +0100)]
; * doc/misc/ede.texi (Top): Improve introduction.

11 months agoFix 'whitespace-mode' in CJK locales
Eli Zaretskii [Sat, 15 Mar 2025 11:42:12 +0000 (13:42 +0200)]
Fix 'whitespace-mode' in CJK locales

* lisp/international/characters.el (ambiguous-width-chars): Remove
U+00A4 and U+00B7 from the list of ambiguous-width characters.
(cjk-ambiguous-chars-are-wide): Doc fix.  (Bug#76852)

11 months ago; Improve documentation of 'gui-get-selection' use on X
Eli Zaretskii [Sat, 15 Mar 2025 09:48:36 +0000 (11:48 +0200)]
; Improve documentation of 'gui-get-selection' use on X

* doc/lispref/frames.texi (Window System Selections):
* lisp/select.el (gui-get-selection): Suggest to use an explicit
DATA-TYPE when calling 'gui-get-selection'.

11 months ago; Fix documentation of mouse-click events
Eli Zaretskii [Sat, 15 Mar 2025 08:04:01 +0000 (10:04 +0200)]
; Fix documentation of mouse-click events

* doc/lispref/commands.texi (Click Events): Add menu-bar events to
the description.  Add missing details about tab-bar click events.

(cherry picked from commit 6e28c2019e772aa19040cf17e314fcee23bb33d4)

11 months agoFix treesit-parser-create behavior regarding indirect buffers
Yuan Fu [Thu, 13 Mar 2025 07:33:47 +0000 (00:33 -0700)]
Fix treesit-parser-create behavior regarding indirect buffers

The previous fix fixed the problem that treesit-parser-create
always use the current buffer, but that introduce another subtle
problem: if an indirect buffer creates a parser, the parser
saves the base buffer rather than the indirect buffer.  In Emacs
29, if you create a parser in an indirect buffer, the parser
saves the indirect buffer.  This change of behavior breaks some
existing use-cases for people using indirect buffer with
tree-sitter.

In Emacs 31, indirect buffers and base buffer get their own
parser list, so this problem doesn't exist anymore.  The fix is
only for Emacs 30.

* src/treesit.c (Ftreesit_parser_create): Use the buffer that's
given to treesit-parser-create, even if it's an indirect buffer.

11 months ago; Fix with-delayed-message docstring metavars.
Basil L. Contovounesios [Thu, 13 Mar 2025 12:36:19 +0000 (13:36 +0100)]
; Fix with-delayed-message docstring metavars.

11 months agoFix 'dired-movement-style' in Dired when subdirs are shown
Eli Zaretskii [Thu, 13 Mar 2025 10:34:23 +0000 (12:34 +0200)]
Fix 'dired-movement-style' in Dired when subdirs are shown

* lisp/dired.el (dired--move-to-next-line): Don't consider
sub-directory lines as empty.  (Bug#76596)